/**
 * 引入vue3
 */
/**
 * createSSRApp 创建一个应用实例，服务端渲染应用（SSR），用于创建服务器端渲染
 * createApp 创建一个应用实例，用于创建客户端渲染
 * createApp与createSSRApp的区别
 * createApp()：用于创建客户端渲染（Client-Side Rendering, CSR）的应用实例。这意味着所有的 Vue 组件都是在用户的浏览器中渲染的
 * createSSRApp()：用于创建服务器端渲染（Server-Side Rendering, SSR）的应用实例。在这种模式下，Vue 组件首先在服务器上渲染成 HTML 字符串，然后这个字符串被发送到客户端（用户的浏览器）。
 */
import { createSSRApp } from 'vue'


/**
 * 引入根页面
 */
import App from './App'

/**
 * 引入创建好的状态管理模块
 */
import pinia from './store'

//引入组件库
import uviewPlus from '@/uni_modules/uview-plus'


/**
 * 创建一个createApp方法并且导出createApp方法
 */
export function createApp() {
  //创建应用实例
  const app = createSSRApp(App)
  //注册全局状态管理插件
  app.use(pinia)
  //注册组件库
  app.use(uviewPlus)

  return {
    app
  }
}
